Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>PascalABC.NET</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/PascalABC.NET"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-PascalABC_NET rootpage-PascalABC_NET skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">PascalABC.NET</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */


.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}


/* end https://en.wikipedia.org/ */
</style><table class="infobox vevent"><tbody><tr><th colspan="2" class="infobox-above" style="background-color:#e0e0e0;">PascalABC.NET</th></tr><tr><td colspan="2" class="infobox-image"><span typeof="mw:File"></span></td></tr><tr><th scope="row" class="infobox-label"><a href="Programming_paradigm" title="Programming paradigm">Paradigm</a></th><td class="infobox-data"><a href="Multi-paradigm_programming_language" class="mw-redirect" title="Multi-paradigm programming language">Multi-paradigm</a>: <a href="Procedural_programming" title="Procedural programming">procedural</a>, <a href="Functional_programming" title="Functional programming">functional</a>, <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented</a>, <a href="Generic_programming" title="Generic programming">generic</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Software_design" title="Software design">Designed&nbsp;by</a></th><td class="infobox-data">PascalABC.NET Compiler Team</td></tr><tr><th scope="row" class="infobox-label">First&nbsp;appeared</th><td class="infobox-data">2007<span style="display:none">&nbsp;(<span class="bday dtstart published updated">2007</span>)</span></td></tr><tr><td colspan="2" class="infobox-full-data"></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_release_life_cycle" title="Software release life cycle">Stable release</a></th><td class="infobox-data"><div style="margin:0px;">3.8.3.3255
/ 4&nbsp;April 2023<span style="display:none">&nbsp;(<span class="bday dtstart published updated">2023-04-04</span>)</span></div></td></tr><tr style="display:none"><td colspan="2">
</td></tr><tr><th scope="row" class="infobox-label"><a href="Type_system" title="Type system">Typing discipline</a></th><td class="infobox-data"><a href="Static_type" class="mw-redirect" title="Static type">Static</a>, <a href="Type_inference" title="Type inference">partially inferred</a></td></tr><tr><th scope="row" class="infobox-label">Implementation language</th><td class="infobox-data">PascalABC.NET</td></tr><tr><th scope="row" class="infobox-label"><a href="Operating_system" title="Operating system">OS</a></th><td class="infobox-data"><a href="Cross-platform" class="mw-redirect" title="Cross-platform">Cross-platform</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Software_license" title="Software license">License</a></th><td class="infobox-data"><a href="GNU_Lesser_General_Public_License" title="GNU Lesser General Public License">LGPLv3</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Filename_extension" title="Filename extension">Filename extensions</a></th><td class="infobox-data">.pas</td></tr><tr><th scope="row" class="infobox-label">Website</th><td class="infobox-data"><span class="url"><a rel="nofollow" class="external text" href="http://pascalabc.net/en">pascalabc<wbr>.net<wbr>/en</a></span></td></tr><tr><th colspan="2" class="infobox-header" style="background-color: #EEEEEE;">Influenced by</th></tr><tr><td colspan="2" class="infobox-full-data"><a href="Delphi_(software)" title="Delphi (software)">Delphi</a>, <a href="Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a>, <a href="Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a>, <a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a>, <a href="Python_(programming_language)" title="Python (programming language)">Python</a>, <a href="Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a>, <a href="Haskell" title="Haskell">Haskell</a></td></tr></tbody></table>
<p><b>PascalABC.NET</b> is a <a href="High-level_programming_language" title="High-level programming language">high-level</a> <a href="General-purpose_programming_language" title="General-purpose programming language">general-purpose</a> <a href="Programming_language" title="Programming language">programming language</a> supporting multiple paradigms. PascalABC.NET is based on <a href="Delphi_(software)" title="Delphi (software)">Delphi</a>'s <a href="Object_Pascal" title="Object Pascal">Object Pascal</a>, but also has influences from <a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a>, <a href="Python_(programming_language)" title="Python (programming language)">Python</a>, <a href="Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a>, and <a href="Haskell" title="Haskell">Haskell</a>. It is distributed both as a command-line tool for Windows (<a href=".NET" title=".NET">.NET</a> framework), Linux and MacOS (Mono), and with an <a href="Integrated_development_environment" title="Integrated development environment">integrated development environment</a> for Windows and Linux, including interactive debugger, <a href="Intelligent_code_completion" class="mw-redirect" title="Intelligent code completion">IntelliSense</a> system, <a href="Graphical_user_interface_builder" title="Graphical user interface builder">form designer</a>, code templates and code auto-formatting.
</p><p>PascalABC.NET is implemented for the <a href=".NET" title=".NET">.NET</a> framework platform, so that it is compatible with all .NET libraries and utilizes all the features of <a href="Common_Language_Runtime" title="Common Language Runtime">Common Language Runtime</a>, such as <a href="Garbage_collection_(computer_science)" title="Garbage collection (computer science)">garbage collection</a>, <a href="Exception_handling" title="Exception handling">exception handling</a>, and <a href="Generic_programming" title="Generic programming">generics</a>. Some language constructions, e.g. tuples, sequences, and lambdas, are based on regular .NET types. PascalABC.NET is ideologically close to <a href="Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a>, but unlike it, provides high compatibility with <a href="Delphi_(software)" title="Delphi (software)">Delphi</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="History_of_PascalABC.NET">History of PascalABC.NET</h2></div>
<p>PascalABC.NET was developed by a group of enthusiasts at the Institute of Mathematics, Mechanics, and Computer Science in Rostov-on-Don, Russia.<sup id="cite_ref-:1_1-0" class="reference"><a href="#cite_note-:1-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> In 2003, a predecessor of the modern PascalABC.NET, called Pascal ABC, was implemented by associate professor Stanislav Mikhalkovich to be used for teaching schoolchildren instead of <a href="Turbo_Pascal" title="Turbo Pascal">Turbo Pascal</a>, which became outdated and incompatible with modern operating systems but was still used for educational purposes. Pascal ABC was implemented as an <a href="Interpreter_(computing)" title="Interpreter (computing)">interpreted programming language</a>, that led to a significant lack of performance. Four years after that it was completely rewritten by students Ivan Bondarev, Alexander Tkachuk, and Sergey Ivanov as a <a href="Compiled_language" title="Compiled language">compiled programming language</a> for the .NET platform. In 2009, PascalABC.NET started to be actively used for teaching high school students. By 2015, the number of users of the language had increased significantly. It began to be actively used throughout Russia in schools and at programming contests, surpassing <a href="Free_Pascal" title="Free Pascal">Free Pascal</a>. Since then, the PascalABC.NET developers have set themselves the goal of actively incorporating modern features into the language. In the same year, PascalABC.NET became an open source project distributed under the <a href="GNU_Lesser_General_Public_License" title="GNU Lesser General Public License">GNU Lesser General Public License</a> (LGPLv3).<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>In 2017<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> and 2022,<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> independent audit of <a rel="nofollow" class="external text" href="https://github.com/pascalabcnet">PascalABC.NET public repository</a> was conducted. Based on the results of the static check, potentially dangerous code fragments were listed that require additional analysis by developers. It was also noted that the overall quality of the code could be improved. To do this, code duplication and redundant checks should be eliminated, and refactoring should be performed more carefully.
</p>
<div class="mw-heading mw-heading2"><h2 id="Use_in_school_and_higher_education">Use in school and higher education</h2></div>
<p>Designed for education, PascalABC.NET remains the most common programming language in Russian schools and one of the recommended languages for passing the <a href="Unified_State_Exam" title="Unified State Exam">Unified State Exam</a> on informatics.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:4_7-0" class="reference"><a href="#cite_note-:4-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:3_8-0" class="reference"><a href="#cite_note-:3-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> In the Southern Federal University, it is used as the first language for teaching students majoring in computer science, and for teaching children in one of the largest computer schools in Russia.<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> PascalABC.NET is widely used as a basic programming language in pedagogical universities for the training of computer science teachers.<sup id="cite_ref-MathAnim_10-0" class="reference"><a href="#cite_note-MathAnim-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-HammingCode_11-0" class="reference"><a href="#cite_note-HammingCode-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-SciGraph_12-0" class="reference"><a href="#cite_note-SciGraph-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> It also serves as a tool for scientific computing.<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> PascalABC.NET is also built into a number of validation systems used for programming competitions.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup>
</p><p>In 2020, during anti-COVID lockdowns and home schooling period, PascalABC.NET website was ranked 3rd in Yandex traffic rating in the "Programming" category, and the number of downloads of the installation kit exceeded 10000 a day.<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup>
</p><p>Though the core of the PascalABC.NET community is located in Russia, the language is also known in other countries such as Belarus,<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> Romania,<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> Indonesia,<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> Algeria.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Language_syntax">Language syntax</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Differences_between_Delphi_and_PascalABC.NET">Differences between Delphi and PascalABC.NET</h3></div>
<div class="mw-heading mw-heading4"><h4 id="New_features">New features</h4></div>
<p><b>•</b> <code>loop</code> statement</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="n">loop</span><span class="w"> </span><span class="mi">10</span><span class="w"> </span><span class="k">do</span>
<span class="w"> </span><span class="nb">Write</span><span class="p">(</span><span class="s">'*'</span><span class="p">)</span><span class="o">;</span>
</pre></div> <p><b>•</b> <code>for</code> loop with a step</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">for</span><span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">i</span><span class="o">:=</span><span class="mi">1</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="mi">20</span><span class="w"> </span><span class="n">step</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="k">do</span>
<span class="w"> </span><span class="n">Print</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">;</span>
</pre></div> <p><b>•</b> <code>foreach</code> loop with an index</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="n">foreach</span><span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">c</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">Arr</span><span class="p">(</span><span class="s">'a'</span><span class="o">..</span><span class="s">'z'</span><span class="p">)</span><span class="w"> </span><span class="kp">index</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="k">do</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="k">mod</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="k">then</span>
<span class="w"> </span><span class="n">Print</span><span class="p">(</span><span class="n">c</span><span class="p">)</span><span class="o">;</span>
</pre></div> <p><b>•</b> <code>a..b</code> ranges</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="p">(</span><span class="mi">1</span><span class="o">..</span><span class="mi">10</span><span class="p">)</span><span class="o">.</span><span class="n">Printlines</span>
</pre></div> <p><b>•</b> short function definition syntax</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">function</span><span class="w"> </span><span class="nf">Sum</span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">b</span><span class="o">;</span>
</pre></div> <p><b>•</b> method implementation can be placed inside a class definition</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">type</span><span class="w"> </span><span class="n">Point</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">class</span>
<span class="w"> </span><span class="n">x</span><span class="o">,</span><span class="n">y</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="o">;</span>
<span class="w"> </span><span class="k">procedure</span><span class="w"> </span><span class="nf">Output</span><span class="o">;</span>
<span class="w"> </span><span class="k">begin</span>
<span class="w"> </span><span class="n">Print</span><span class="p">(</span><span class="n">x</span><span class="o">,</span><span class="n">y</span><span class="p">)</span><span class="o">;</span>
<span class="w"> </span><span class="k">end</span><span class="o">;</span>
<span class="k">end</span><span class="o">;</span>
</pre></div> <p><b>•</b> <code>sequence of T</code> type as an abstraction of arrays, lists and sets</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">var</span><span class="w"> </span><span class="n">seq</span><span class="o">:</span><span class="w"> </span><span class="n">sequence</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="kt">integer</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">Arr</span><span class="p">(</span><span class="mi">1</span><span class="o">..</span><span class="mi">10</span><span class="p">)</span><span class="o">;</span>
<span class="n">seq</span><span class="o">.</span><span class="n">Println</span><span class="o">;</span>
<span class="n">seq</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">Lst</span><span class="p">(</span><span class="mi">11</span><span class="o">..</span><span class="mi">100</span><span class="p">)</span><span class="o">;</span><span class="w"> </span><span class="n">seq</span><span class="o">.</span><span class="n">Println</span><span class="o">;</span>
<span class="n">seq</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">HSet</span><span class="p">(</span><span class="mi">1</span><span class="o">..</span><span class="mi">20</span><span class="p">)</span><span class="o">;</span><span class="w"> </span><span class="n">seq</span><span class="o">.</span><span class="n">Println</span><span class="o">;</span>
</pre></div> <p><b>•</b> <a href="Anonymous_function" title="Anonymous function">lambda functions</a></p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">var</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">ArrGen</span><span class="p">(</span><span class="mi">10</span><span class="o">,</span><span class="n">i</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">i</span><span class="o">*</span><span class="n">i</span><span class="p">)</span><span class="o">;</span>
</pre></div> <p><b>•</b> auto classes - classes with an automatically generated constructor</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">type</span><span class="w"> </span><span class="n">Point</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">auto</span><span class="w"> </span><span class="k">class</span>
<span class="w"> </span><span class="n">x</span><span class="o">,</span><span class="n">y</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="o">;</span>
<span class="k">end</span><span class="o">;</span>
<span class="k">var</span><span class="w"> </span><span class="n">p</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Point</span><span class="p">(</span><span class="mi">2</span><span class="o">,</span><span class="mi">5</span><span class="p">)</span><span class="o">;</span>
</pre></div> <p><b>•</b> one-dimensional and multi-dimensional array slices</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">var</span><span class="w"> </span><span class="n">m</span><span class="o">:</span><span class="w"> </span><span class="k">array</span><span class="w"> </span><span class="p">[</span><span class="o">,</span><span class="p">]</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="kt">integer</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">MatrGen</span><span class="p">(</span><span class="mi">3</span><span class="o">,</span><span class="mi">4</span><span class="o">,</span><span class="w"> </span><span class="p">(</span><span class="n">i</span><span class="o">,</span><span class="n">j</span><span class="p">)</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">i</span><span class="o">+</span><span class="n">j</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span><span class="o">;</span>
<span class="n">Println</span><span class="p">(</span><span class="n">m</span><span class="p">)</span><span class="o">;</span><span class="w"> </span><span class="c1">// [[1,2,3,4],[2,3,4,5],[3,4,5,6]] </span>
<span class="n">Println</span><span class="p">(</span><span class="n">m</span><span class="p">[</span><span class="o">:</span><span class="mi">2</span><span class="o">,</span><span class="mi">1</span><span class="o">:</span><span class="mi">3</span><span class="p">])</span><span class="o">;</span><span class="w"> </span><span class="c1">// [[2,3],[3,4]]</span>
</pre></div><p>Some other features such as inline variable declarations, type inference, and <code>for</code> statement with a variable declaration are standard in the current version of Delphi. However, PascalABC.NET pioneered these features in 2007,<sup id="cite_ref-:2_23-0" class="reference"><a href="#cite_note-:2-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> while in Delphi they were implemented in 2018.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup>
</p><div class="mw-heading mw-heading4"><h4 id="Changed_features">Changed features</h4></div>
<ul><li>strings in <code>case</code> statements</li>
<li>sets based on arbitrary type: <code>set of string</code></li>
<li>constructors can be invoked with <code>new T(...)</code> syntax</li>
<li>type extension methods instead of class helpers</li>
<li>modules can be defined in a simplified form (without <code>interface</code> and <code>implementation</code> sections)</li></ul>
<div class="mw-heading mw-heading4"><h4 id="Not_implemented_features">Not implemented features</h4></div>
<ul><li>records with variant parts</li>
<li>open arrays</li>
<li>nested class definitions</li>
<li><a href="Inline_assembler" title="Inline assembler">inline assembly code</a></li></ul>
<div class="mw-heading mw-heading3"><h3 id="Functional_style_features">Functional style features</h3></div>
<p>In PascalABC.NET, functions are <a href="First-class_citizen" title="First-class citizen">first-class objects</a>. They can be assigned to variables, passed as parameters, and returned from other functions. Functional type is set in the form <code>T -&gt; Res</code>.<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup> An <a href="Anonymous_function" title="Anonymous function">anonymous function</a> can be assigned to the variable of this type:
</p>
<div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="err">##</span><span class="w"> </span><span class="c1">// denotes that the main program will be written without enclosing begin-end</span>
<span class="k">var</span><span class="w"> </span><span class="n">f</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="o">;</span>
</pre></div>
<p>Here is an example of <a href="Function_composition_(computer_science)" title="Function composition (computer science)">superposition</a> of two functions:
</p>
<div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="err">##</span>
<span class="k">function</span><span class="w"> </span><span class="nf">Super</span><span class="o">&lt;</span><span class="n">T</span><span class="o">,</span><span class="n">T1</span><span class="o">,</span><span class="n">T2</span><span class="o">&gt;</span><span class="p">(</span><span class="n">f</span><span class="o">:</span><span class="w"> </span><span class="n">T1</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">T2</span><span class="o">;</span><span class="w"> </span><span class="n">g</span><span class="o">:</span><span class="w"> </span><span class="n">T</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">T1</span><span class="p">)</span><span class="o">:</span><span class="w"> </span><span class="n">T</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">T2</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">f</span><span class="p">(</span><span class="n">g</span><span class="p">(</span><span class="n">x</span><span class="p">))</span><span class="o">;</span>

<span class="k">var</span><span class="w"> </span><span class="n">f</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="o">;</span>
<span class="k">var</span><span class="w"> </span><span class="n">fg</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">Super</span><span class="p">(</span><span class="n">f</span><span class="o">,</span><span class="nb">Sin</span><span class="p">)</span><span class="o">;</span>
<span class="k">var</span><span class="w"> </span><span class="n">gf</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">Super</span><span class="p">(</span><span class="nb">Sin</span><span class="o">,</span><span class="n">f</span><span class="p">)</span><span class="o">;</span>

<span class="n">Print</span><span class="p">(</span><span class="n">fg</span><span class="p">(</span><span class="mi">2</span><span class="p">))</span><span class="o">;</span>
<span class="n">Print</span><span class="p">(</span><span class="n">gf</span><span class="p">(</span><span class="mi">2</span><span class="p">))</span><span class="o">;</span>
</pre></div>
<p>Superposition operation is defined in the standard library:
</p>
<div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="err">##</span>
<span class="k">var</span><span class="w"> </span><span class="n">f</span><span class="o">:</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">real</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="o">;</span>

<span class="n">Print</span><span class="p">((</span><span class="n">f</span><span class="o">*</span><span class="nb">Cos</span><span class="p">)(</span><span class="mi">2</span><span class="p">))</span><span class="o">;</span>
<span class="n">Print</span><span class="p">((</span><span class="nb">Cos</span><span class="o">*</span><span class="n">f</span><span class="p">)(</span><span class="mi">2</span><span class="p">))</span><span class="o">;</span>
</pre></div><p>
In the book "How To Program Effectively In Delphi"<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> and in the corresponding video tutorials,<sup id="cite_ref-:0_28-0" class="reference"><a href="#cite_note-:0-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> Dr. Kevin Bond, a programmer and a Computer Science teaching specialist,<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup> notes that PascalABC.NET has powerful functional programming capabilities which are missing in Delphi. As an example, <a href="Partial_application" title="Partial application">partial function application</a> is demonstrated:</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">f</span><span class="o">:</span><span class="w"> </span><span class="kt">integer</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">integer</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">integer</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">y</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">y</span><span class="o">;</span>
<span class="w"> </span><span class="nb">Writeln</span><span class="p">(</span><span class="n">f</span><span class="p">(</span><span class="mi">2</span><span class="p">)(</span><span class="mi">6</span><span class="p">))</span><span class="o">;</span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="Code_examples">Code examples</h2></div>
<p>PascalABC.NET is a multi-paradigm programming language. It allows one to use different coding styles from oldschool Pascal to functional and object-oriented programming. The same task can be solved in different styles as follows:<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Usual_PascalABC.NET_style">Usual PascalABC.NET style</h3></div>
<div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">ReadInteger2</span><span class="o">;</span><span class="w"> </span><span class="c1">// read input into tuple of two variables</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="nb">sum</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="mi">0</span><span class="o">;</span><span class="w"> </span><span class="c1">// type auto-inference</span>
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">i</span><span class="o">:=</span><span class="n">a</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="n">b</span><span class="w"> </span><span class="k">do</span>
<span class="w"> </span><span class="nb">sum</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">i</span><span class="o">*</span><span class="n">i</span><span class="o">;</span>
<span class="w"> </span><span class="n">Print</span><span class="p">(</span><span class="err">$</span><span class="s">'Sum = {sum}'</span><span class="p">)</span><span class="w"> </span><span class="c1">// string interpolation</span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Procedural_style">Procedural style</h3></div>
<div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">function</span><span class="w"> </span><span class="nf">SumSquares</span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="o">:</span><span class="w"> </span><span class="kt">integer</span><span class="p">)</span><span class="o">:</span><span class="w"> </span><span class="kt">integer</span><span class="o">;</span>
<span class="k">begin</span>
<span class="w"> </span><span class="bp">Result</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="mi">0</span><span class="o">;</span>
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="n">b</span><span class="w"> </span><span class="k">do</span><span class="w"> </span>
<span class="w"> </span><span class="bp">Result</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">i</span>
<span class="k">end</span><span class="o">;</span>

<span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">ReadInteger2</span><span class="o">;</span><span class="w"> </span>
<span class="w"> </span><span class="n">Print</span><span class="p">(</span><span class="err">$</span><span class="s">'Sum = {SumSquares(a,b)}'</span><span class="p">)</span><span class="w"> </span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Functional_style">Functional style</h3></div><p>
This solution uses .NET extension methods for sequences and PascalABC.NET-specific range <code>(a..b)</code>.</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">ReadInteger2</span><span class="o">;</span>
<span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">..</span><span class="n">b</span><span class="p">)</span><span class="o">.</span><span class="n">Sum</span><span class="p">(</span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="p">)</span><span class="o">.</span><span class="n">Print</span><span class="w"> </span><span class="c1">// method chaining with lambda expressions</span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Object-oriented_style">Object-oriented style</h3></div><p>
This solution demonstrates PascalABC.NET-specific short function definition style.</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">type</span><span class="w"> </span><span class="n">Algorithms</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">class</span>
<span class="w"> </span><span class="n">static</span><span class="w"> </span><span class="k">function</span><span class="w"> </span><span class="nf">SumSquares</span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="o">:</span><span class="w"> </span><span class="kt">integer</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">..</span><span class="n">b</span><span class="p">)</span><span class="o">.</span><span class="n">Sum</span><span class="p">(</span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="p">)</span><span class="o">;</span><span class="w"> </span>
<span class="w"> </span><span class="n">static</span><span class="w"> </span><span class="k">function</span><span class="w"> </span><span class="nf">SumCubes</span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="o">:</span><span class="w"> </span><span class="kt">integer</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">..</span><span class="n">b</span><span class="p">)</span><span class="o">.</span><span class="n">Sum</span><span class="p">(</span><span class="n">x</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="o">*</span><span class="n">x</span><span class="p">)</span><span class="o">;</span>
<span class="k">end</span><span class="o">;</span>

<span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">ReadInteger2</span><span class="o">;</span>
<span class="w"> </span><span class="n">Println</span><span class="p">(</span><span class="err">$</span><span class="s">'Squares sum = {Algorithms.SumSquares(a,b)}'</span><span class="p">)</span><span class="o">;</span>
<span class="w"> </span><span class="n">Println</span><span class="p">(</span><span class="err">$</span><span class="s">'Cubes sum = {Algorithms.SumCubes(a,b)}'</span><span class="p">)</span><span class="w"> </span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Close_to_regular_C#_style">Close to regular C# style</h3></div><p>
It is possible to write programs without usage of PascalABC.NET standard library. All standard .NET Framework classes and methods can be used directly.</p><div class="mw-highlight mw-highlight-lang-delphi mw-content-ltr" dir="ltr"><pre><span class="k">uses</span><span class="w"> </span><span class="n">System</span><span class="o">;</span><span class="w"> </span><span class="c1">// using .NET System namespace</span>
<span class="k">begin</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">arr</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="n">Console</span><span class="o">.</span><span class="n">ReadLine</span><span class="o">.</span><span class="n">Split</span><span class="p">(</span>
<span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="kt">char</span><span class="p">[](</span><span class="s">' '</span><span class="p">)</span><span class="o">,</span><span class="w"> </span>
<span class="w"> </span><span class="n">StringSplitOptions</span><span class="o">.</span><span class="n">RemoveEmptyEntries</span>
<span class="w"> </span><span class="p">)</span><span class="o">;</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="p">(</span><span class="n">a</span><span class="o">,</span><span class="n">b</span><span class="p">)</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="p">(</span><span class="kt">integer</span><span class="o">.</span><span class="n">Parse</span><span class="p">(</span><span class="n">arr</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span><span class="o">,</span><span class="kt">integer</span><span class="o">.</span><span class="n">Parse</span><span class="p">(</span><span class="n">arr</span><span class="p">[</span><span class="mi">1</span><span class="p">]))</span><span class="o">;</span>
<span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="nb">sum</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="mi">0</span><span class="o">;</span>
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="k">var</span><span class="w"> </span><span class="n">i</span><span class="o">:=</span><span class="n">a</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="n">b</span><span class="w"> </span><span class="k">do</span><span class="w"> </span>
<span class="w"> </span><span class="nb">sum</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">i</span><span class="o">*</span><span class="n">i</span><span class="o">;</span>
<span class="w"> </span><span class="n">Console</span><span class="o">.</span><span class="n">WriteLine</span><span class="p">(</span><span class="err">$</span><span class="s">'Sum = {sum}'</span><span class="p">)</span>
<span class="k">end</span><span class="o">.</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="Criticism">Criticism</h2></div>
<p>Though PascalABC.NET is actively used for teacher training,<sup id="cite_ref-:4_7-1" class="reference"><a href="#cite_note-:4-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-MathAnim_10-1" class="reference"><a href="#cite_note-MathAnim-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> some members of the teaching community ignore difference between historically used Turbo Pascal and PascalABC.NET, criticizing some unspecified "Pascal" language for being far from modern programming, too wordy and not simple enough to be used as the first programming language.<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> They consider Python to be the best starting point, as it is more concise and practically applicable. Their opponents, including&nbsp; PascalABC.NET developers themselves, argue that it is incorrect to put an equal sign between the classic Pascal and PascalABC.NET, as the latter contains lots of modern multi-paradigm features, including the ones from Python.<sup id="cite_ref-:3_8-1" class="reference"><a href="#cite_note-:3-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup> PascalABC.NET allows students to write as concise and expressive programs as Python,<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup> and acts as a "bridge to production programming" by applying a static typing concept.<sup id="cite_ref-:3_8-2" class="reference"><a href="#cite_note-:3-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> PascalABC.NET is also a compilable language, which makes it easier to learn programming, because all semantic errors are caught at compile time rather than occur unpredictably at runtime.<sup id="cite_ref-:3_8-3" class="reference"><a href="#cite_note-:3-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-39" class="reference"><a href="#cite_note-39"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup>
Pascal is often regarded as a strictly structured programming language, which makes it a popular choice for introductory programming education. However, some authors argue that the promotion of Python as a beginner-friendly language is driven, in part, by commercial interests.
</p>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-:1-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-:1_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFOsipov2019" class="citation book cs1 cs1-prop-foreign-lang-source">Osipov, Alexander V. (2019). <i>PascalABC.NET: Vvedenie v sovremennoe programmirovanie [PascalABC.NET: Introduction to Modern Programming]</i> (in Russian). Rostov-on-Don, Russia. p.&nbsp;28.</cite><span class="cs1-maint citation-comment"><code class="cs1-code">{{cite book}}</code>: CS1 maint: location missing publisher (link)</span></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="https://tpair.org/podcast/tp-389/">"Twisted Pair Podcast, #389"</a>. <i>Twisted Pair Podcast</i> (in Russian). 30 March 2021.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite id="CITEREFBondarevBelyakovaMikhalkovich2013" class="citation web cs1">Bondarev, Ivan V.; Belyakova, Yulia V.; Mikhalkovich, Stanislav S. (24 April 2013). <a rel="nofollow" class="external text" href="https://pascalabc.net/downloads/Presentations/10letPABC.pdf">"PascalABC.NET programming system: 10 years of development"</a> <span class="cs1-format">(PDF)</span>. <i>PascalABC.NET</i><span class="reference-accessdate">. Retrieved <span class="nowrap">9 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pvs-studio.com/en/blog/posts/csharp/0492/">"Analysis of PascalABC.NET using SonarQube plugins: SonarC# and PVS-Studio"</a>. <i>PVS-Studio</i>. 29 March 2017.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://medium.com/pvs-studio/re-checking-pascalabc-net-f8bfc94aba3c">"Re-checking PascalABC.NET"</a>. <i>Medium</i>. 11 February 2022.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20220128150316/http://rcoi.mcko.ru/resources/upload/RichFilemanager/documents/2020-2021/org_metod/11/mr_kege_inf_2021.pdf">"Metodicheskie rekomendacii po podgotovke i provedeniyu edinogo gosudarstvennogo ekzamena po informatike i IKT v komp'yuternoj forme v gorode Moskve v 2021 godu [Guidelines for the preparation and conduct of the unified state exam in computer science and ICT in the city of Moscow in 2021]"</a> <span class="cs1-format">(PDF)</span> (in Russian). Departament obrazovaniya i nauki goroda Moskvy [Department of Education and Science of Moscow]. p.&nbsp;110. Archived from <a rel="nofollow" class="external text" href="http://rcoi.mcko.ru/resources/upload/RichFilemanager/documents/2020-2021/org_metod/11/mr_kege_inf_2021.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 28 January 2022<span class="reference-accessdate">. Retrieved <span class="nowrap">5 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-:4-7"><span class="mw-cite-backlink">^ <a href="#cite_ref-:4_7-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:4_7-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFPolyakov" class="citation web cs1 cs1-prop-foreign-lang-source">Polyakov, Konstantin. <a rel="nofollow" class="external text" href="https://kpolyakov.spb.ru/school/doklad.htm">"Doklady na konferenciyah i seminarah [Reports at conferences and seminars]"</a> (in Russian).</cite></span>
</li>
<li id="cite_note-:3-8"><span class="mw-cite-backlink">^ <a href="#cite_ref-:3_8-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:3_8-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:3_8-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-:3_8-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFBogdanov2022" class="citation web cs1 cs1-prop-foreign-lang-source">Bogdanov, Alexey (4 October 2022). <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=RulhCYnbRAA">"PascalABC.Net or Python/ C#/C++"</a>. <i>YouTube</i> (in Russian)<span class="reference-accessdate">. Retrieved <span class="nowrap">5 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite id="CITEREFPopova2022" class="citation news cs1 cs1-prop-foreign-lang-source">Popova, Ekaterina (6 September 2022). <a rel="nofollow" class="external text" href="https://www.rostov.kp.ru/daily/27441/4643617/">"Kak v Rostove gumanitarii uspeshno obuchayutsya IT-special'nostyam [How humanitarians successfully study IT specialties in Rostov]"</a>. <i>Komsomolskaya Pravda</i> (in Russian).</cite></span>
</li>
<li id="cite_note-MathAnim-10"><span class="mw-cite-backlink">^ <a href="#cite_ref-MathAnim_10-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-MathAnim_10-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFDzhenzherDenisova2019" class="citation journal cs1 cs1-prop-foreign-lang-source">Dzhenzher, V.O.; Denisova, L.V. (2019). <span class="id-lock-subscription" title="Paid subscription required"><a rel="nofollow" class="external text" href="https://www.sciencegate.app/document/10.32517/2221-1993-2019-18-6-51-54">"Mathematical animation in computer simulation at school"</a></span>. <i>Informatics in School</i> (in Russian) (6): <span class="nowrap">51–</span>54. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2019-18-6-51-54">10.32517/2221-1993-2019-18-6-51-54</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:203704481">203704481</a>.</cite></span>
</li>
<li id="cite_note-HammingCode-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-HammingCode_11-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFDzhenzherDenisova2021" class="citation journal cs1 cs1-prop-foreign-lang-source">Dzhenzher, V.O.; Denisova, L.V. (2021). <a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2021-20-9-27-36">"Implementation of the Hamming code on PascalABC.NET while studying the theoretical foundations of informatics"</a>. <i>Informatics in School</i> (in Russian). <b>1</b> (9): <span class="nowrap">29–</span>38. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2021-20-9-27-36">10.32517/2221-1993-2021-20-9-27-36</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:245473319">245473319</a>.</cite></span>
</li>
<li id="cite_note-SciGraph-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-SciGraph_12-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFDzhenzherDenisova2020" class="citation journal cs1 cs1-prop-foreign-lang-source">Dzhenzher, V.O.; Denisova, L.V. (2020). <span class="id-lock-subscription" title="Paid subscription required"><a rel="nofollow" class="external text" href="https://www.sciencegate.app/document/10.32517/2221-1993-2020-19-1-31-39">"Scientific graphics in PascalABC.NET: plotting function graphs in a rectangular cartesian coordinate system"</a></span>. <i>Informatics in School</i> (in Russian) (1): <span class="nowrap">31–</span>39. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2020-19-1-31-39">10.32517/2221-1993-2020-19-1-31-39</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:215844807">215844807</a>.</cite></span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><cite id="CITEREFKulabukhov2021" class="citation journal cs1 cs1-prop-foreign-lang-source">Kulabukhov, S.Yu. (2021). <span class="id-lock-subscription" title="Paid subscription required"><a rel="nofollow" class="external text" href="https://school.infojournal.ru/jour/article/view/528/528">"Mathematical modeling in informatiсs lessons using numerical solution of differential equations"</a></span>. <i>Informatics in School</i> (in Russian) (2): <span class="nowrap">14–</span>21. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2021-20-2-14-21">10.32517/2221-1993-2021-20-2-14-21</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:235541530">235541530</a>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><cite id="CITEREFKhazievaIvanov2020" class="citation journal cs1 cs1-prop-foreign-lang-source">Khazieva, R.T.; Ivanov, M.D. (2020). <a rel="nofollow" class="external text" href="https://www.energyret.ru/jour/article/view/1625/696">"Selection of optimum device parameters for permanent magnetic field generation"</a>. <i>Power Engineering: Research, Equipment, Technology</i> (in Russian). <b>22</b> (6): <span class="nowrap">176–</span>187. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.30724%2F1998-9903-2020-22-6-176-187">10.30724/1998-9903-2020-22-6-176-187</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:233658494">233658494</a>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite id="CITEREFLukyanovZolotov2021" class="citation journal cs1 cs1-prop-foreign-lang-source">Lukyanov, O.E.; Zolotov, D.V. (2021). <a rel="nofollow" class="external text" href="https://journals.ssau.ru/vestnik/article/view/8633/pdf">"Methodological support for the training of UAV designers and operators"</a>. <i>VESTNIK of Samara University. Aerospace and Mechanical Engineering</i> (in Russian). <b>20</b> (1): <span class="nowrap">14–</span>28. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.18287%2F2541-7533-2021-20-1-14-28">10.18287/2541-7533-2021-20-1-14-28</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:236617894">236617894</a>.</cite></span>
</li>
<li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://acmp.ru/article.asp?id_text=120">"ACMP Olympiad System"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230327035528/https://acmp.ru/article.asp?id_text=120">Archived</a> from the original on 27 March 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">5 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://contest.yandex.ru/compilers/">"Yandex Contest Compilers List"</a>. <i>Yandex Contest</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230314174434/https://contest.yandex.ru/compilers/">Archived</a> from the original on 14 March 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">5 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><cite id="CITEREFKubysheva2020" class="citation web cs1 cs1-prop-foreign-lang-source">Kubysheva, Olga (17 April 2020). <a rel="nofollow" class="external text" href="https://www.rostov.kp.ru/online/news/3839814/">"PascalABC.NET: Sajt sistemy programmirovaniya, razrabatyvaemoj na mekhmate YUFU, podnyalsya v rejtinge YAndeksa na tret'e mesto [PascalABC.NET: Site of programming system developed at SFedU MMCS faculty climbed up to the third place in Yandex ranking]"</a>. <i>Komsomol'skaya pravda</i> (in Russian).</cite></span>
</li>
<li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><cite id="CITEREFKutysh2018" class="citation journal cs1 cs1-prop-foreign-lang-source">Kutysh, Aleksandr Z. (2018). <a rel="nofollow" class="external text" href="https://www.adu.by/images/2019/05/PedNauka_3(24)_2018.pdf">"Razrabotka soderzhaniya vzaimosvyazannogo obucheniya budushchih uchitelej informatiki tekhnologiyam programmirovaniya [Development of interconnected training content for future computer science teachers in programming]"</a> <span class="cs1-format">(PDF)</span>. <i>Pedagogical Science and Education</i> (in Russian) (3): <span class="nowrap">44–</span>52.</cite></span>
</li>
<li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.youtube.com/playlist?list=PLP11T_LhFxPlQoxbZ1ZTlrv6AXDQjJJqB">"Practică în Pascal"</a>. <i>YouTube</i>. 21 January 2020.</cite></span>
</li>
<li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.pascal-id.org/news/357/mengenal-pascalabc.net">"Mengenal PascalABC.NET"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20220810114037/https://www.pascal-id.org/news/357/mengenal-pascalabc.net">Archived</a> from the original on 10 August 2022<span class="reference-accessdate">. Retrieved <span class="nowrap">8 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.youtube.com/playlist?list=PLmFVPmv0ntGNq-mu4vCT68I5ekJQj-Ocn">"PASCAL AND DELPHI TUTORIAL"</a>. <i>YouTube</i>. 12 June 2022.</cite></span>
</li>
<li id="cite_note-:2-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-:2_23-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="https://pascalabc.net/chto-novogo">"PascalABC.NET. What's New"</a>. <i>PascalABC.NET</i> (in Russian)<span class="reference-accessdate">. Retrieved <span class="nowrap">9 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><cite id="CITEREFEmbarcadero_Technologies2018" class="citation web cs1">Embarcadero Technologies (21 November 2018). <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=RreUFdxaR20&amp;t=44s">"See What's New in RAD Studio 10.3"</a>. <i>YouTube</i>.</cite></span>
</li>
<li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docwiki.embarcadero.com/RADStudio/Rio/en/What%27s_New">"Help for RAD Studio 10.3 Rio. What's New"</a>. <i>Embarcadero. Product Documentation Wikis</i><span class="reference-accessdate">. Retrieved <span class="nowrap">9 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><cite id="CITEREFOsipov2019" class="citation book cs1 cs1-prop-foreign-lang-source">Osipov, Alexander V. (2019). <i>PascalABC.NET: Vvedenie v sovremennoe programmirovanie [PascalABC.NET: Introduction to Modern Programming]</i> (in Russian). Rostov-on-Don, Russia. pp.&nbsp;<span class="nowrap">116–</span>120.</cite><span class="cs1-maint citation-comment"><code class="cs1-code">{{cite book}}</code>: CS1 maint: location missing publisher (link)</span></span>
</li>
<li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><cite id="CITEREFKevin_R._Bond2021" class="citation book cs1">Kevin R. Bond (2021). "Chapter 44. Anonymous methods". <i>How to Program Effectively in Delphi for AS/A Level Computer Science</i>. Educational Computing Services Ltd. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9780992753603</bdi>.</cite></span>
</li>
<li id="cite_note-:0-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-:0_28-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFKevin_Bond2022" class="citation web cs1">Kevin Bond (10 February 2022). <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=RBlg-ItyyTA&amp;t=377s">"How to Program Effectively in Delphi. Lesson 44. Part 1"</a>. <i>YouTube</i><span class="reference-accessdate">. Retrieved <span class="nowrap">4 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=OmregYuqLU8&amp;t=1640s">"Delphi Boot Camp 2022 - Delphi and functional programming using anonymous methods"</a>. <i>YouTube</i>. 28 August 2022<span class="reference-accessdate">. Retrieved <span class="nowrap">4 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20230404131810/https://www.educational-computing.com/DelphiBook/KRBsBriefBiography.pdf">"Brief biography Dr Kevin R Bond"</a> <span class="cs1-format">(PDF)</span>. <i>Educational Computing Services Ltd</i>. Archived from <a rel="nofollow" class="external text" href="https://www.educational-computing.com/DelphiBook/KRBsBriefBiography.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 4 April 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">4 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pascalabcnet.github.io/mydoc_progr_styles.html">"PascalABC.NET programming styles"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">9 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><cite id="CITEREFDzhenzherDenisova2022" class="citation journal cs1 cs1-prop-foreign-lang-source">Dzhenzher, V.O.; Denisova, L.V. (2022). <a rel="nofollow" class="external text" href="https://school.infojournal.ru/jour/article/view/614/611">"Dynamic arrays and lists in PascalABC.NET"</a>. <i>Informatics in School</i> (in Russian) (1): <span class="nowrap">67–</span>80. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2022-21-1-67-80">10.32517/2221-1993-2022-21-1-67-80</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:249662060">249662060</a>.</cite></span>
</li>
<li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="http://mmcs.sfedu.ru/registration/28-PABCConf2023">"Nauchno-metodicheskaya konferenciya «Ispol'zovanie sistemy programmirovaniya PascalABC.NET v obuchenii programmirovaniyu» (29-30 marta 2023 g.) [Scientific and methodical conference "Using PascalABC.NET programming system in teaching programming" (March 29-30, 2023)]"</a>. <i>Institute of Mathematics, Mechanics, and Computer Science</i> (in Russian)<span class="reference-accessdate">. Retrieved <span class="nowrap">10 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><cite id="CITEREFPanovaKolivnyk2020" class="citation journal cs1 cs1-prop-foreign-lang-source">Panova, I.V.; Kolivnyk, A.A. (2020). <a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2020-19-6-47-50">"Methodological Aspects of Teaching Python Programming in the School Informatics Course"</a>. <i>Informatics in School</i> (in Russian) (6): <span class="nowrap">47–</span>50. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.32517%2F2221-1993-2020-19-6-47-50">10.32517/2221-1993-2020-19-6-47-50</a></span>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:225133880">225133880</a>.</cite></span>
</li>
<li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="https://habr.com/ru/companies/skillfactory/articles/559010/">"What's wrong with modern computer science teaching"</a>. <i>Habr</i> (in Russian). 28 May 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">8 April</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><cite id="CITEREFBragilevsky2020" class="citation web cs1">Bragilevsky, Vitaly (14 April 2020). <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=OtcKHgkPiyk&amp;t=2318s">"The First Programming Language Dispute: The Final Solution"</a>. <i>YouTube</i>. JetBrains.</cite></span>
</li>
<li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><cite id="CITEREFPolyakov2021" class="citation web cs1 cs1-prop-foreign-lang-source">Polyakov, Konstantin (24 August 2021). <a rel="nofollow" class="external text" href="https://kpolyakov.spb.ru/download/pas2021.ppt">"New features in PascalABC.NET"</a> (in Russian).</cite></span>
</li>
<li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><cite id="CITEREFMikhalkovich2021" class="citation web cs1">Mikhalkovich, Stanislav (22 November 2021). <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=ZcWP82JBqZI">"Comparing Python and PascalABC.NET"</a>. <i>YouTube</i>.</cite></span>
</li>
<li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><cite id="CITEREFOsipov2020" class="citation book cs1 cs1-prop-foreign-lang-source">Osipov, Alexander V. (2020). <i>PascalABC.NET: vybor shkol'nika. CHast' 1. [PascalABC.NET: Schoolchildren's Choice. Part 1]</i> (in Russian) (2nd&nbsp;ed.). Southern Federal University. pp.&nbsp;<span class="nowrap">16–</span>19.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><span class="official-website"><span class="url"><a rel="nofollow" class="external text" href="http://pascalabc.net/en">Official website</a></span></span></li>
<li><a rel="nofollow" class="external text" href="https://github.com/pascalabcnet">PascalABC.NET</a> on <a href="GitHub" title="GitHub">GitHub</a></li>
<li><a rel="nofollow" class="external text" href="https://t.me/pascalabc_official">Official Telegram Channel <i>PascalABC.NET</i></a></li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r886047488">
/* start https://en.wikipedia.org/ */


.mw-parser-output .nobold{font-weight:normal}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Pascal_programming_language_family576" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="3"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Pascal_programming_language_family576" style="font-size:114%;margin:0 4em"><a href="Pascal_(programming_language)" title="Pascal (programming language)">Pascal programming language</a> family</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Programming_language#Dialects,_flavors_and_implementations" title="Programming language">Dialects</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a></li>
<li><a href="Object_Pascal" title="Object Pascal">Object Pascal</a></li>
<li><a href="Pascal_Script" title="Pascal Script">Pascal Script</a></li>
<li><a href="Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a></li>
<li><a href="Clascal" title="Clascal">Clascal</a></li>
<li><a href="Concurrent_Pascal" title="Concurrent Pascal">Concurrent Pascal</a></li>
<li><a href="Joyce_(programming_language)" title="Joyce (programming language)">Joyce</a></li>
<li><a href="SuperPascal" title="SuperPascal">SuperPascal</a></li></ul>
</div></td><td class="noviewer navbox-image" rowspan="6" style="width:1px;padding:0 0 0 2px"><div><span typeof="mw:File"></span></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Compiler" title="Compiler">Compilers</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Current</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Delphi_(software)" title="Delphi (software)">Delphi</a> (<a href="History_of_Delphi_(software)" title="History of Delphi (software)">history</a>)</li>
<li><a href="Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a></li>
<li><a href="Pascal_(programming_language)#Compilers_and_interpreters" title="Pascal (programming language)">VSI Pascal</a></li>
<li><a href="IP_Pascal" title="IP Pascal">IP Pascal</a></li>
<li><a href="Free_Pascal" title="Free Pascal">Free Pascal</a> (<a href="Lazarus_(software)" title="Lazarus (software)">Lazarus</a>)</li>

<li><a href="GNU_Pascal" title="GNU Pascal">GNU Pascal</a></li>
<li><a href="Turbo51" title="Turbo51">Turbo51</a></li>
<li><a href="Pic_Micro_Pascal" title="Pic Micro Pascal">Pic Micro Pascal</a></li>
<li><a href="Amsterdam_Compiler_Kit" title="Amsterdam Compiler Kit">ACK</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Virtual_Pascal" title="Virtual Pascal">Virtual Pascal</a></li>
<li><a href="Apple_Pascal" title="Apple Pascal">Apple Pascal</a></li>
<li><a href="Borland_Kylix" title="Borland Kylix">Borland Kylix</a></li>
<li><a href="Turbo_Pascal" title="Turbo Pascal">Turbo Pascal</a></li>
<li><a href="Microsoft_Pascal" title="Microsoft Pascal">Microsoft Pascal</a></li>
<li><a href="UCSD_Pascal" title="UCSD Pascal">UCSD Pascal</a></li>
<li><a href="JRT_Pascal" title="JRT Pascal">JRT Pascal</a></li>
<li><a href="Pascal/MT%2B" title="Pascal/MT+">Pascal/MT+</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="API" title="API">API</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Component_Library_for_Cross_Platform" title="Component Library for Cross Platform">CLX</a></li>
<li><a href="Free_Component_Library" title="Free Component Library">FCL</a></li>
<li><a href="FireMonkey" title="FireMonkey">FireMonkey</a></li>
<li><a href="Lazarus_Component_Library" title="Lazarus Component Library">LCL</a></li>
<li><a href="Object_Windows_Library" title="Object Windows Library">Object Windows Library</a></li>
<li><a href="OpenWire_(library)" title="OpenWire (library)">OpenWire</a></li>
<li><a href="Free_Pascal_Runtime_Library" title="Free Pascal Runtime Library">RTL</a></li>
<li><a href="Turbo_Vision" title="Turbo Vision">Turbo Vision</a></li>
<li><a href="Visual_Component_Library" title="Visual Component Library">Visual Component Library</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Microcomputer" title="Microcomputer">Microcomputer</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Pascal_MicroEngine" title="Pascal MicroEngine">Pascal MicroEngine</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Comparison_of_programming_languages" title="Comparison of programming languages">Comparisons</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_Pascal_and_C" title="Comparison of Pascal and C">Pascal and C</a></li>
<li><a href="Comparison_of_Pascal_and_Delphi" title="Comparison of Pascal and Delphi">Pascal and Delphi</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Designer</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="3"><div>
<ul><li><a href="Generic_programming#Genericity_in_Pascal" title="Generic programming">Genericity</a></li></ul>
<dl><dt><span class="nobold">Related to</span></dt>
<dd><a href="ALGOL" title="ALGOL">ALGOL</a> (1958)</dd>
<dd><a href="Modula-2" title="Modula-2">Modula-2</a> (1977)</dd>
<dd><a href="Ada_(programming_language)" title="Ada (programming language)">Ada</a> (1983)</dd>
<dd><a href="Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a> (1986)</dd>
<dd><a href="Modula-3" title="Modula-3">Modula-3</a> (1988)</dd>
<dd><a href="Oberon-2" title="Oberon-2">Oberon-2</a> (1991)</dd>
<dd><a href="Component_Pascal" title="Component Pascal">Component Pascal</a> (1991)</dd></dl>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Integrated_development_environments623" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Integrated_development_environments623" style="font-size:114%;margin:0 4em"><a href="Integrated_development_environment" title="Integrated development environment">Integrated development environments</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="C_(programming_language)" title="C (programming language)">C</a>, <a href="C%2B%2B" title="C++">C++</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Arduino_IDE" class="mw-redirect" title="Arduino IDE">Arduino IDE</a></li>
<li><a href="Code%3A%3ABlocks" title="Code::Blocks">Code::Blocks</a></li>
<li><a href="CodeLite" title="CodeLite">CodeLite</a></li>
<li><a href="Dev-C%2B%2B" title="Dev-C++">Dev-C++</a></li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a></li>
<li><a href="Emacs" title="Emacs">Emacs</a></li>
<li><a href="Geany" title="Geany">Geany</a></li>
<li><a href="GNOME_Builder" title="GNOME Builder">GNOME Builder</a></li>
<li><a href="Kakoune" title="Kakoune">Kakoune</a></li>
<li><a href="KDevelop" title="KDevelop">KDevelop</a></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li>QDevelop</li>
<li><a href="Qt_Creator" title="Qt Creator">Qt Creator</a></li>
<li><a href="Ultimate%2B%2B" title="Ultimate++">TheIDE</a></li>
<li><a href="Vi_(text_editor)" title="Vi (text editor)">Vi</a>–<a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a></li>
<li><a href="Watcom_C/C%2B%2B" title="Watcom C/C++">OpenWatcom</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="DevEco_Studio" class="mw-redirect" title="DevEco Studio">DevEco Studio</a></li>
<li><a href="Oracle_Developer_Studio" title="Oracle Developer Studio">Oracle Developer Studio</a></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
<li><a href="Visual_Studio#Community" title="Visual Studio">Visual Studio Community</a></li>
<li><a href="Xcode" title="Xcode">Xcode</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="C%2B%2BBuilder" title="C++Builder">C++Builder</a></li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a>-based
<ul><li><a href="CodeWarrior" title="CodeWarrior">CodeWarrior</a></li>
<li><a href="MyEclipse" title="MyEclipse">MyEclipse</a></li></ul></li>
<li><a href="Visual_Studio" title="Visual Studio">Visual Studio</a></li>
<li>By <a href="JetBrains" title="JetBrains">JetBrains</a>
<ul><li><a href="IntelliJ_IDEA" title="IntelliJ IDEA">IntelliJ IDEA</a></li>
<li><a href="CLion" class="mw-redirect" title="CLion">CLion</a></li></ul></li>
<li><a href="LabWindows/CVI" title="LabWindows/CVI">LabWindows/CVI</a></li>
<li>IBM <a href="Rational_Software_Architect" class="mw-redirect" title="Rational Software Architect">Rational Software Architect</a></li>
<li><a href="Understand_(software)" title="Understand (software)">Understand</a></li>
<li><a href="SlickEdit" title="SlickEdit">SlickEdit</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Anjuta" title="Anjuta">Anjuta</a></li>
<li>By <a href="JetBrains" title="JetBrains">JetBrains</a>
<ul><li><a href="AppCode" class="mw-redirect" title="AppCode">AppCode</a></li></ul></li>
<li><a href="VisualAge" title="VisualAge">VisualAge</a></li>
<li><a href="Microsoft_Visual_Studio_Express#Visual_C++_Express" title="Microsoft Visual Studio Express">Visual C++ Express</a></li>
<li><a href="MonoDevelop" title="MonoDevelop">MonoDevelop</a></li>
<li><a href="SharpDevelop" title="SharpDevelop">SharpDevelop</a></li>
<li><a href="Borland_Turbo_C" class="mw-redirect" title="Borland Turbo C">Borland Turbo C</a>, <a href="Turbo_C%2B%2B" title="Turbo C++">C++</a></li>
<li><a href="QuickC" title="QuickC">QuickC</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Java_(software_platform)" title="Java (software platform)">Java</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Anjuta" title="Anjuta">Anjuta</a></li>
<li><a href="BlueJ" title="BlueJ">BlueJ</a></li>
<li><a href="DrJava" title="DrJava">DrJava</a></li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a></li>
<li><a href="Geany" title="Geany">Geany</a></li>
<li><a href="Greenfoot" title="Greenfoot">Greenfoot</a></li>
<li><a href="IntelliJ_IDEA" title="IntelliJ IDEA">IntelliJ IDEA</a> Community Edition
<ul><li><a href="Android_Studio" title="Android Studio">Android Studio</a></li></ul></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li><a href="DevEco_Studio" class="mw-redirect" title="DevEco Studio">DevEco Studio</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="JGRASP" title="JGRASP">jGRASP</a></li>
<li><a href="JDeveloper" title="JDeveloper">JDeveloper</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>JCreator</li>
<li><a href="MyEclipse" title="MyEclipse">MyEclipse</a></li>
<li><a href="JetBrains" title="JetBrains">JetBrains</a> <a href="IntelliJ_IDEA" title="IntelliJ IDEA">IntelliJ IDEA</a></li>
<li><a href="SlickEdit" title="SlickEdit">SlickEdit</a></li>
<li><a href="Understand_(software)" title="Understand (software)">Understand</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>Metrowerks <a href="CodeWarrior" title="CodeWarrior">CodeWarrior</a> Pro for Java</li>
<li><a href="JBuilder" title="JBuilder">JBuilder</a></li>
<li><a href="Sun_Java_Studio_Creator" title="Sun Java Studio Creator">Sun Java Studio Creator</a> (superseded by <a href="NetBeans" title="NetBeans">NetBeans</a>)</li>
<li><a href="VisualAge" title="VisualAge">VisualAge</a> (superseded by <a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a>)</li>
<li><a href="Visual_Caf%C3%A9" title="Visual Café">Visual Café</a> (aka Espresso, superseded by <a href="JBuilder" title="JBuilder">JBuilder</a>)</li>
<li><a href="Visual_J%2B%2B" title="Visual J++">Visual J++</a></li>
<li><a href="Xelfi" class="mw-redirect" title="Xelfi">Xelfi</a> (became <a href="NetBeans" title="NetBeans">NetBeans</a>)</li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="JavaScript" title="JavaScript">JavaScript</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Open_source36" scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
<li><a href="Atom_(text_editor)" title="Atom (text editor)">Atom</a></li>
<li><a href="Chromium_(web_browser)" title="Chromium (web browser)">Chromium</a></li>
<li><a href="DevEco_Studio" class="mw-redirect" title="DevEco Studio">DevEco Studio</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Common_Language_Infrastructure" title="Common Language Infrastructure">CLI</a> (<a href=".NET" title=".NET">.NET</a>)</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
</ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_Studio#Community" title="Visual Studio">Visual Studio Community</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_Studio" title="Visual Studio">Visual Studio</a></li>
<li><a href="JetBrains#Rider" title="JetBrains">Rider</a></li>
<li><a href="Understand_(software)" title="Understand (software)">Understand</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Xamarin_Studio" class="mw-redirect" title="Xamarin Studio">Xamarin Studio</a></li>
<li><a href="MonoDevelop" title="MonoDevelop">MonoDevelop</a></li>
<li><a href="SharpDevelop" title="SharpDevelop">SharpDevelop</a></li>
<li><a href="Microsoft_Visual_Studio_Express#Visual_Basic_Express" title="Microsoft Visual Studio Express">Visual Basic Express</a></li>
<li><a href="Microsoft_Visual_Studio_Express#Visual_Web_Developer_Express" title="Microsoft Visual Studio Express">Visual Web Developer Express</a></li>
<li><a href="Microsoft_Visual_Studio_Express#2005–2010_products" title="Microsoft Visual Studio Express">Visual J# Express</a></li>
<li><a href="Microsoft_Visual_Studio_Express#2005–2010_products" title="Microsoft Visual Studio Express">Visual Studio Express for Windows Phone</a></li>
<li><a href="Microsoft_Visual_Studio_Express#Visual_C++_Express" title="Microsoft Visual Studio Express">Visual C++ Express</a></li>
<li><a href="Microsoft_Visual_Studio_Express#_Express" title="Microsoft Visual Studio Express">Visual C# Express</a></li>
<li><a href="Microsoft_Visual_Studio_Express#2015-2017_products" title="Microsoft Visual Studio Express">Express for Desktop</a></li>
<li><a href="Microsoft_Visual_Studio_Express#2015-2017_products" title="Microsoft Visual Studio Express">Express for Web</a></li>
<li><a href="Microsoft_Visual_Studio_Express#2015-2017_products" title="Microsoft Visual Studio Express">Express for Windows</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Adobe_Flash" title="Adobe Flash">Flash</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Adobe_Flash_Builder" title="Adobe Flash Builder">Adobe Flash Builder</a></li>
<li>FlashDevelop</li>
<li><a href="Powerflasher_FDT" title="Powerflasher FDT">Powerflasher FDT</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="PHP" title="PHP">PHP</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Aptana" title="Aptana">Aptana</a></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li><a href="Komodo_Edit" title="Komodo Edit">Komodo Edit</a></li>
<li><a href="Komodo_IDE" title="Komodo IDE">Komodo IDE</a></li>
<li><a href="KDevelop" title="KDevelop">KDevelop</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Codelobster" title="Codelobster">Codelobster</a></li>
<li><a href="PhpStorm" class="mw-redirect" title="PhpStorm">PhpStorm</a></li>
<li><a href="PHPEdit" title="PHPEdit">PHPEdit</a></li>
<li><a href="SlickEdit" title="SlickEdit">SlickEdit</a></li>
<li><a href="Zend_Studio" title="Zend Studio">Zend Studio</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="R_(programming_language)" title="R (programming language)">R</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="RStudio" title="RStudio">RStudio</a></li>
<li><a href="R_Tools_for_Visual_Studio" title="R Tools for Visual Studio">R Tools for Visual Studio</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Python_(programming_language)" title="Python (programming language)">Python</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Anjuta" title="Anjuta">Anjuta</a></li>
<li><a href="IDLE" title="IDLE">IDLE</a></li>
<li><a href="Eric_(software)" title="Eric (software)">Eric</a></li>
<li><a href="Light_Table_(software)" title="Light Table (software)">Light Table</a></li>
<li><a href="Ninja-IDE" title="Ninja-IDE">Ninja-IDE</a></li>
<li><a href="PyDev" title="PyDev">PyDev</a></li>
<li>PyScripter</li>
<li>PIDA</li>
<li><a href="Spyder_(software)" title="Spyder (software)">Spyder</a></li>
<li><a href="Komodo_Edit" title="Komodo Edit">Komodo Edit</a></li>
<li><a href="Komodo_IDE" title="Komodo IDE">Komodo IDE</a></li>
<li><a href="KDevelop" title="KDevelop">KDevelop</a></li>
<li><a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
<li><a href="Thonny" title="Thonny">Thonny</a></li>
<li><a href="DevEco_Studio" class="mw-redirect" title="DevEco Studio">DevEco Studio</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="PyCharm" title="PyCharm">PyCharm</a></li>
<li><a href="PythonAnywhere" title="PythonAnywhere">PythonAnywhere</a></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
<li><a href="SlickEdit" title="SlickEdit">SlickEdit</a></li>
<li><a href="Wing_IDE" title="Wing IDE">Wing IDE</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a>,<br><a href="Object_Pascal" title="Object Pascal">Object Pascal</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Free_Pascal" title="Free Pascal">Free Pascal</a> IDE</li>
<li><a href="Lazarus_(software)" title="Lazarus (software)">Lazarus</a></li>
<li><a href="Dev-Pascal" title="Dev-Pascal">Dev-Pascal</a></li>
<li>GNAVI</li>
</ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Delphi_(software)#Embarcadero_Delphi_10.2_Tokyo_(Community_Edition)" title="Delphi (software)">Delphi Community</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Delphi_(software)" title="Delphi (software)">Delphi</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Turbo_Pascal" title="Turbo Pascal">Turbo Pascal</a></li>
<li><a href="Virtual_Pascal" title="Virtual Pascal">Virtual Pascal</a></li>
<li><a href="Borland_Kylix" title="Borland Kylix">Borland Kylix</a></li>
<li><a href="Microsoft_Pascal" title="Microsoft Pascal">QuickPascal</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="BASIC" title="BASIC">BASIC</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Basic-256" title="Basic-256">Basic-256</a></li>
<li><a href="Microsoft_Small_Basic" title="Microsoft Small Basic">Microsoft Small Basic</a></li>
<li><a href="SdlBasic" title="SdlBasic">SdlBasic</a></li>
<li><a href="Gambas" title="Gambas">Gambas</a></li>
<li><a href="Basic4GL" title="Basic4GL">Basic4GL</a></li>
<li><a href="FreeBASIC" title="FreeBASIC">VisualFBEditor / WinFBE</a></li>
<li><a href="QB64" title="QB64">InForm</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="FutureBASIC" title="FutureBASIC">FutureBASIC</a></li>
<li><a href="RapidQ" title="RapidQ">RapidQ</a></li>
<li><a href="Visual_Studio#Community" title="Visual Studio">Visual Studio Community</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_Studio" title="Visual Studio">Visual Studio</a></li>
<li><a href="NS_Basic" title="NS Basic">NS Basic</a></li>
<li><a href="PureBasic" title="PureBasic">PureBasic</a></li>
<li><a href="GLBasic" title="GLBasic">GLBasic</a></li>
<li><a href="Liberty_BASIC" title="Liberty BASIC">Liberty BASIC</a></li>
<li><a href="Xojo" title="Xojo">Xojo</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Discontinued</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CA-Realizer" title="CA-Realizer">CA-Realizer</a></li>
<li><a href="MonoDevelop" title="MonoDevelop">MonoDevelop</a></li>
<li><a href="QuickBASIC" title="QuickBASIC">QuickBASIC</a></li>
<li><a href="QBasic" title="QBasic">QBasic</a></li>
<li><a href="SharpDevelop" title="SharpDevelop">SharpDevelop</a></li>
<li><a href="Visual_Basic_(classic)" title="Visual Basic (classic)">Visual Basic</a></li>
<li><a href="Microsoft_Visual_Studio_Express#Visual_Basic_Express" title="Microsoft Visual Studio Express">Visual Basic Express</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Go_(programming_language)" title="Go (programming language)">Go</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a> (VSCode)</li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Freeware" title="Freeware">Freeware</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Cloud9_IDE" title="Cloud9 IDE">Cloud9 IDE</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Retail_software" title="Retail software">Retail</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="JetBrains#GoLand" title="JetBrains">GoLand</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="EiffelStudio" title="EiffelStudio">EiffelStudio</a></li>
<li><a href="LibertyEiffel" title="LibertyEiffel">LibertyEiffel</a></li>
<li><a href="Visual_Eiffel" title="Visual Eiffel">Visual Eiffel</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Haxe" title="Haxe">Haxe</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="IntelliJ_IDEA" title="IntelliJ IDEA">IntelliJ IDEA</a></li>
<li><a href="VS_Code" class="mw-redirect" title="VS Code">VS Code</a></li>
<li><a href="Sublime_Text" title="Sublime Text">Sublime Text</a></li>
<li><a href="Powerflasher_FDT" title="Powerflasher FDT">Powerflasher FDT</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="POP-11" title="POP-11">POP-11</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Poplog" title="Poplog">Poplog</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Online_integrated_development_environment" title="Online integrated development environment">Online</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>AWS <a href="Cloud9_IDE" title="Cloud9 IDE">Cloud9 IDE</a></li>
<li><a href="Eclipse_Che" title="Eclipse Che">Eclipse Che</a></li>
<li><a href="Firebase_Studio" title="Firebase Studio">Firebase Studio</a></li>
<li><a href="SourceLair" title="SourceLair">SourceLair</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><b><a href="Comparison_of_integrated_development_environments" title="Comparison of integrated development environments">Comparison</a></b></li>
<li><b>Category</b></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Graphical_user_interface_builders291" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Graphical_user_interface_builders291" style="font-size:114%;margin:0 4em"><a href="Graphical_user_interface_builder" title="Graphical user interface builder">Graphical user interface builders</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Qt_(software)" title="Qt (software)">Qt</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Open_source36" scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Qt_Creator" title="Qt Creator">Qt Creator</a></li>
<li><a href="KDevelop" title="KDevelop">KDevelop</a></li>
<li><a href="Gambas" title="Gambas">Gambas</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="GTK" title="GTK">GTK</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Glade_Interface_Designer" title="Glade Interface Designer">Glade Interface Designer</a></li>
<li><a href="Gambas" title="Gambas">Gambas</a></li>
<li><a href="MonoDevelop" title="MonoDevelop">Stetic GUI Designer</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Xojo" title="Xojo">Xojo</a> (on <a href="Linux" title="Linux">Linux</a>)</li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="WxWidgets" title="WxWidgets">wxWidgets</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Open_source36" scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Code%3A%3ABlocks" title="Code::Blocks">Code::Blocks</a></li>
<li><a href="CodeLite" title="CodeLite">CodeLite</a></li>
<li><a href="Glade_Interface_Designer" title="Glade Interface Designer">wxGlade</a></li>
<li><a href="WxFormBuilder" title="WxFormBuilder">wxFormBuilder</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Common_Language_Infrastructure" title="Common Language Infrastructure">CLI</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="SharpDevelop" title="SharpDevelop">SharpDevelop</a></li>
</ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Microsoft_Visual_Studio" class="mw-redirect" title="Microsoft Visual Studio">Microsoft Visual Studio</a></li>
<li><a href="Microsoft_Blend" title="Microsoft Blend">Microsoft Blend</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Visual_Component_Library" title="Visual Component Library">VCL</a>,<br><a href="Visual_Component_Library#Related_frameworks" title="Visual Component Library">related</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a>, <a href="Lazarus_Component_Library" title="Lazarus Component Library">LCL</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Lazarus_(IDE)" class="mw-redirect" title="Lazarus (IDE)">Lazarus</a></li>
<li><a href="FreeBASIC" title="FreeBASIC">Visual FB Editor</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Delphi_(software)" title="Delphi (software)">Delphi</a></li>
<li><a href="C%2B%2BBuilder" title="C++Builder">C++Builder</a></li>
<li><a href="RadPHP" class="mw-redirect" title="RadPHP">RadPHP</a></li>
<li><a href="Borland_Kylix" title="Borland Kylix">Borland Kylix</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Cocoa_(API)" title="Cocoa (API)">Cocoa</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Proprietary36" scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Xcode" title="Xcode">Xcode</a>, <a href="Interface_Builder" title="Interface Builder">Interface Builder</a></li>
<li><a href="Xojo" title="Xojo">Xojo</a> (on <a href="MacOS" title="MacOS">macOS</a>)</li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Java_(programming_language)" title="Java (programming language)">Java</a>-based</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Android_Studio" title="Android Studio">Android Studio</a> (via <a href="XML" title="XML">XML</a>)</li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a> (via <a href="Standard_Widget_Toolkit" title="Standard Widget Toolkit">SWT</a>)</li>
<li><a href="NetBeans#GUI_design_tool" title="NetBeans">NetBeans</a> (via <a href="Swing_(Java)" title="Swing (Java)">Swing</a>)</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="IntelliJ_IDEA" title="IntelliJ IDEA">IntelliJ IDEA</a></li>
<li><a href="JDeveloper" title="JDeveloper">JDeveloper</a> (via <a href="Swing_(Java)" title="Swing (Java)">Swing</a>)</li>
<li><a href="WaveMaker" title="WaveMaker">WaveMaker</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Windows_API" title="Windows API">Windows API</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>GNAVI</li>
<li><a href="FreeBASIC" title="FreeBASIC">WinFBE</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CA-Realizer" title="CA-Realizer">CA-Realizer</a></li>
<li><a href="Visual_Basic_(classic)" title="Visual Basic (classic)">Visual Basic</a></li>
<li><a href="Xojo" title="Xojo">Xojo</a> (for <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>)</li>
<li><a href="RapidQ" title="RapidQ">RapidQ</a></li>
<li><a href="Liberty_BASIC" title="Liberty BASIC">Liberty BASIC</a></li>
<li><a href="PureBasic" title="PureBasic">PureBasic</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">Open source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="FLUID" title="FLUID">FLUID</a></li>
<li><a href="Gorm_(computing)" class="mw-redirect" title="Gorm (computing)">Gorm</a></li>
<li><a href="IUP_(software)" title="IUP (software)">IUP</a></li>
<li><a href="QB64" title="QB64">InForm</a></li>
<li><a href="Morphic_(software)" title="Morphic (software)">Morphic</a></li>
<li><a href="Ultimate%2B%2B" title="Ultimate++">TheIDE</a></li>
<li><a href="XBasic" title="XBasic">XBasic</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">Proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Axure_RP" title="Axure RP">Axure RP</a></li>
<li><a href="Clarion_(programming_language)" title="Clarion (programming language)">Clarion IDE</a></li>
<li><a href="JUCE" title="JUCE">Projucer</a></li>
<li><a href="XVT" title="XVT">XVT</a> Design</li>
<li><a href="Resource_construction_set" title="Resource construction set">Resource construction set</a></li>
<li><a href="LANSA_(development_environment)" title="LANSA (development environment)">LANSA</a></li>
<li><a href="Softwell_Maker" title="Softwell Maker">Softwell Maker</a></li>
<li><a href="Embedded_Wizard" title="Embedded Wizard">Embedded Wizard</a></li>
<li><a href="OutSystems" title="OutSystems">OutSystems</a></li>
<li><a href="Mendix" title="Mendix">Mendix</a></li>
<li><a href="Topincs" title="Topincs">Topincs</a></li>
<li><a href="PowerBuilder" title="PowerBuilder">PowerBuilder</a></li>
<li><a href="NS_Basic" title="NS Basic">AppStudio</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-06-23" href="https://en.wikipedia.org/wiki/?title=PascalABC.NET&amp;oldid=1297059742">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>